package cn.itcast.nems.studentrecord.dao.dataobject;

import cn.itcast.nems.employee.dao.bean.EmployeeGroupBean;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDate;
import java.util.List;

@Data
public class ClazzEnrollmentCountDO implements Serializable {
    /**
     * 缴费情况ID
     */
    private String id;
    /**
     * EMS 班级ID
     */
    private Integer clazzId;
    /**
     * 班级名称 ·
     */
    private String clazzName;
    /**
     * 开班时间
     */
    private LocalDate startDate;
    /**
     * 校区ID
     */
    private String schoolId;
    private List<String> schoolIds;
    /**
     * 校区名称
     */
    private String schoolName;
    /**
     * 学科ID
     */
    private String subjectId;
    private List<String> subjectIds;
    /**
     * 学科名称
     */
    private String subjectName;
    /**
     * 报名总人数
     */
    private Integer totalNumber;
    /**
     * 完成缴费总人数
     */
    private Integer paidNumber;
    /**
     * 部分缴费总人数
     */
    private Integer payingNumber;
    /**
     * 未缴费总人数
     */
    private Integer pendingNumber;

    /**
     * 欠费金额合计
     */
    private Integer balanceAmountDue;
    /**
     * 状态;枚举值：0｜未完成缴费、1｜已完成缴费。当完成缴费总人数=报名总人数时，状态为1。持续报名后“报名人数>完成缴费总人数”时状态改为0；
     */
    private Integer state;
    /**
     * 开班时间 范围
     */
    private String openClazzStartDate;
    private String openClazzEndDate;
    /**
     * 班级类型ID
     */
    private String clazzTypeId;
    /**
     * 班级类型名称
     */
    private String clazzTypeName;
    /**
     * 是否可升级 ，0- 就业班、1-基础班
     */
    private Boolean upgradeable ;
    /**
     * 是否排除用户组
     */
    private Boolean excludeFlag  ;

    /**
     * 当前登录账号关联的用户组
     */
    private List<EmployeeGroupBean> employeeGroups;
}
